package com.yinhai.message.client.api;

import java.util.Date;
import java.util.List;

import com.yinhai.message.api.bean.TMMessage;
import com.yinhai.message.api.bean.TMAppMessage;
import com.yinhai.message.api.bean.TMUser;
import com.yinhai.message.api.bean.TMWeChat;

/**
 * 提供第三方应用消息操作调用的接口
 * @author maxp 2017年3月15日10:37:11
 */
public interface ITMService {

    /**
     * 一对一发送
     */
    String sendMessage(TMUser sendUser, TMUser receiveUser, TMMessage tmMessage, TMWeChat wechat) throws Exception;

    /**
     * 一对多发送
     */
    String sendMessage(TMUser sendUser, List<TMUser> receiveUser, TMMessage tmMessage, TMWeChat wechat) throws Exception;
    String sendMessage(TMUser sendUser, List<TMUser> receiveUser, TMMessage tmMessage, TMWeChat wechat, boolean useMime) throws Exception;
    
    /**
     * 根据时间段查询个人已发送的消息
     */
    List<TMMessage> getTMMessage(TMUser user, Date start, Date end) throws Exception;
    
    /**
     * 发送 针对参保人员的app消息
     * @param aac001
     * @param messageApp
     * @return
     */
    String sendAppMessage(String aac001, TMAppMessage messageApp) throws Exception;
}
